// 注册路由的业务逻辑
const express = require("express");
let router = express.Router();
const userDB = require("../../database/userinfo.js");   //userinfo表的操作

router.post("/", async (req,res)=>{     //async处理异步操作
  // console.log(req.body);
  // 用户名和密码字符校验
  let {user,password} = req.body;
  if(/^[\u4e00-\u9fa5_a-zA-Z0-9]+$/.test(user) && /^[a-zA-Z]\w{5,17}$/.test(password)){
    // 数据格式正确,要将数据存到数据库中
    // 查询数据库中的用户是否已经存在,
    let userDoc = await userDB.findOne({user});
    if(userDoc){
      //有存在相同的用户数据时
      res.send({
        code:3, //表示用户已存在,无法注册
        message:'用户名已存在',
      })
    }else{
      //不存在相同用户数据时,将注册的用户名和密码添加到数据库
      await userDB.create({user,password});
      res.send({
        code:0, //注册成功
        message:"恭喜您,注册成功!"
      })
    }
  }else{
    res.send({
      code:2, //2代表数据格式不规范
      message:"您的数据格式不规范"
    });
  }
})


// 导出
module.exports = router;